package com.yanqu.road.entity.activity.zhenhuan.secondProcess;

import com.yanqu.road.entity.DataObject;
import com.yanqu.road.entity.FieldTypeAnnotation;

@FieldTypeAnnotation(tableName = "t_u_zhenhuan_second", desc = "甄嬛传第二阶段数据")
public class UserZhenHuanSecondProcessData extends DataObject {
    @FieldTypeAnnotation(select = true, update = true, desc = "活动id")
    private int activityId;
    @FieldTypeAnnotation(select = true, update = true, desc = "用户id")
    private long userId;
    @FieldTypeAnnotation(desc = "体力")
    private int power;
    @FieldTypeAnnotation(desc = "体力恢复时间戳")
    private long powerRecoverTime;
    @FieldTypeAnnotation(desc = "点赞记录")
    private boolean isWorship;
    @FieldTypeAnnotation(desc = "妃位")
    private int level;
    @FieldTypeAnnotation(desc = "喜爱度")
    private long loveDegree;
    @FieldTypeAnnotation(desc = "威信")
    private long prestigeDegree;
    @FieldTypeAnnotation(desc = "累计出行次数")
    private int goingOutAmount;

    private boolean able; // 是否可参赛 一阶段活动没有跑默认有资格,有活动登录时去晋升模块拉取资格

    public UserZhenHuanSecondProcessData() {
    }

    public UserZhenHuanSecondProcessData(int activityId, long userId) {
        this.activityId = activityId;
        this.userId = userId;
        this.level = 1; //初始1级
        setInsertOption();
    }

    public int getActivityId() {
        return activityId;
    }

    public void setActivityId(int activityId) {
        this.activityId = activityId;
    }

    public long getUserId() {
        return userId;
    }

    public void setUserId(long userId) {
        this.userId = userId;
    }

    public int getPower() {
        return power;
    }

    public void setPower(int power) {
        this.power = power;
        setUpdateOption();
    }

    public long getPowerRecoverTime() {
        return powerRecoverTime;
    }

    public void setPowerRecoverTime(long powerRecoverTime) {
        this.powerRecoverTime = powerRecoverTime;
        setUpdateOption();
    }

    public boolean isWorship() {
        return isWorship;
    }

    public void setWorship(boolean worship) {
        isWorship = worship;
        setUpdateOption();
    }

    public int getLevel() {
        return level;
    }

    public void setLevel(int level) {
        this.level = level;
        setUpdateOption();
    }

    public long getLoveDegree() {
        return loveDegree;
    }

    public void setLoveDegree(long loveDegree) {
        this.loveDegree = loveDegree;
        setUpdateOption();
    }

    public long getPrestigeDegree() {
        return prestigeDegree;
    }

    public void setPrestigeDegree(long prestigeDegree) {
        this.prestigeDegree = prestigeDegree;
        setUpdateOption();
    }

    public int getGoingOutAmount() {
        return goingOutAmount;
    }

    public void setGoingOutAmount(int goingOutAmount) {
        this.goingOutAmount = goingOutAmount;
        setUpdateOption();
    }

    public boolean isAble() {
        return able;
    }

    public void setAble(boolean able) {
        this.able = able;
    }
}
